package com.doitedu.day04.funcs

/**
 * @Date 22.6.23
 * @Created by HANGGE
 * @Description
 * 1 sorted
 * 2 sortBy
 * 3 sortWith
 *   简单的单一维度(条件)排序使用
 *   复杂的排序使用比较器 可比较的[实现比较接口]
 *   比较器: 灵活  创建多个比较器  需要的时候传入不同的比较器  不同的比较规则
 *   可比较的: 在类上实现  排序规则固定
 *
 *       商品: 联想笔记本
 *       商品: 小米手机
 *       商品: 中性笔
 *           办公
 *           电子
 *           订单总金额   日  周   月  季度   年
 *                     电子  办公
 *                     上海  北京  南京
 *   维度:
 *   度量: sum(money)  avg  count
 */

object _03SortWith {
  def main(args: Array[String]): Unit = {
    val stus = List[Student](
      // 1 3   -->   1  3
      // 3 2   -->  1  2  3

      Student(1,"gy",42,42) ,
      Student(3,"yj",38,60) ,
      Student(2,"lh",22,99) ,
      Student(5,"yangzhu",23,88) ,
      Student(4,"zhanqian",24,50) ,
      Student(6,"weihao",22,60) ,
    )
    stus.sortWith((stu1 , stu2)=>stu1.name > stu2.name).foreach(println)
  }
}
